home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The PC-SIG Library 10
/
The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso
/
PC_SIGCD
/
19
/
5
/
DISK1959.ZIP
/
QB4CREF.DOC
< prev
next >
Wrap
Text File
|
1989-07-23
|
10KB
|
190 lines
DOCUMENTATION FOR QB4CREF
INTRODUCTION
QB4CREF is a cross-reference program for Quick BASIC programs. It will
cross-reference even interpreted BASIC (GWBASIC) programs, but the
reference information will not be as useful as for Quick BASIC programs.
QB4CREF is copyrighted (c), 1989, by T.N.T. Software Inc. It was
written by Bruce W. Tonkin. It is a shareware program: that means you may
try it before you buy it. If you try it and decide you like it and wish to
continue using it, you should register your copy by sending $25 to T.N.T.
Software Inc. at 34069 Hainesville Road, Round Lake IL 60073. Registered
users are entitled to support and source code, and will be notified of any
updates.
You may freely distribute QB4CREF to your friends and you may post it
on bulletin boards and the like. You may not sell QB4CREF without the
written permission of T.N.T. Software Inc.
RUNNING QB4CREF
QB4CREF is very easy to run. If you don't remember how to use it, just
type in QB4CREF at the MSDOS command line and the program itself will tell
you what to do.
The normal syntax is:
QB4CREF INFILE OUTFILE
Where INFILE is the name of the input file, and OUTFILE is the name of
the desired output file. INFILE should be a BASIC program saved as a text
file, and OUTFILE may be a disk file or a device name (such as LPT1, PRN,
or COM1). If you don't give a file type extension for INFILE, QB4CREF will
assume the file name ends in .BAS. There is no default extension for the
output file. If you don't give an output file name, the cross-reference
information will be displayed on the screen.
QB4CREF will not check to see if the output file already exists. If it
does, it will be overwritten. If you give the same name for the input and
output files, QB4CREF will crash--stop running, give an error message, and
return to MSDOS.
As QB4CREF runs, it will display information for you on the screen.
The information will be much the same as the information written to the
output file.
LIMITS
QB4CREF can handle up to 1,000 variables, 1,000 labels, 1,000
subprograms, and 1,000 functions (up to 4,000 items in total). The
variable names may be of any length, but for the others only the first 32
characters will be significant. That's unlikely to cause any problem;
names longer than 32 characters rarely happen, and in nearly every case the
name differs from another name by then.
QB4CREF will recognize every keyword present in Quick BASIC 4.5. It
will be easy to add more keywords as future versions of Quick BASIC are
released.
All references for the various items will be by the relative line
number in the source code. The line numbers (if any) present in the
original source code will be treated as the labels they are. 'Include
files' will not be included in the cross-reference. To do so would make
line number referencing rather difficult.
APPEARANCE OF THE CROSS-REFERENCE
Rather than attempt to describe what a cross-reference looks like, I
will show you what the cross-reference for QB4CREF looks like:
1
Cross reference for qb4cref.bas as of 14:28:50 on 07-23-1989
415 lines, and 14762 bytes.
1 subprograms defined:
Name Line
wipe 405
1 labels used and referenced:
premature
45 variables, subprograms, and labels used:
a f$ islegal$ maxlen subcount wipe
a$ flag j minlen subs( x
a$( fmt$ k offset t! x$
b fsize& keywords outlin top z
b$ funcount labelcount poscount v$( z$
c$ funs( labels( premature varcount
columns i lastrow q$ what
conprint isdigit$ maxlabel sp where
Variable/label/function/subprogram reference by source line:
a.......... 2 64 65 78 79 80 82 83 87 88 89 90 91 93 94 95
99 100 101 102 106 107 108 109 116 117 118 119 125 127 128 129
140 142 143 147 148 149 160 162 163 169 170 171 182 184 185 186
197 203 204 205 206 207 209 210 212 237 238 239 240 251 253 254
257 260 380 381 408 410 411 412
a$......... 74 76 77 78 80 81 82 83 85 87 88 90 93 95 96 97
99 101 102 104 105 114 115 124 125 126 127 128 146 147 148 166
169 171 182 184 186 197 199 203 205 206 207 208 209 210 212 216
218 221 226 230 232 233 246 248 249 250 255 261 262 265 266 268
362 379 380 406 408 411 412
a$(........ 5 49 50 52 200 203 206 207 209 210 212
b.......... 80 81 82
b$......... 90 91 128 130 131 132 140 141 142 143 148 150 151 152 160 161
162 163 171 172 173 174 186 187 188 189 222 223 224 225 226 228
248 250 377 380
c$......... 65 66 243 299
columns.... 334 335 337 340 341 349 350 352 355 356
conprint... 243 273 275 302 310 312 315 321 323 326 331 341 344 346 347 356
359 361 363 365 375 385 389 393 397
f$......... 53 54 64 65 67 68 300 303
flag....... 132 134 136 152 154 156 174 176 178 189 191 193 254 255 256 257
260 261 262 263 264 265 280 282 287 289 294 296 376 383 390
fmt$....... 370 371 388 389
fsize&..... 68 301 304
funcount... 120 121 122 291 318 320 321 324
funs(...... 13 121 122 294 325 326
i.......... 49 50 52 130 131 132 140 150 151 152 160 172 173 174 187 188
189 202 203 206 207 209 210 212 215 264 279 280 281 286 287 288
293 294 295 313 314 315 316 324 325 326 327 336 338 345 351 353
360 366 367 368 372 374 375 377 399
isdigit$... 14 15
islegal$... 15 88 91 131 151 173 188 205 206
j.......... 133 134 135 153 154 155 175 176 177 190 191 192 337 338 340 341
343 352 353 355 356 358 378 388 389 396
k.......... 338 339 340 341 353 354 355 356
keywords... 52 200 202
labelcount. 72 132 133 134 137 138 152 153 154 157 158 174 175 176 179 180
2
189 190 191 194 195 276 277 330 332 335 339
labels(.... 7 132 134 138 152 154 158 174 176 180 189 191 195 280 340 341
lastrow.... 335 336 338 350 351 353
maxlabel... 138 158 180 195 334
maxlen..... 268 349 371 391
minlen..... 200 208
offset..... 367 369 371 374 375 384 385
outlin..... 112 122 233 301 304 370 378
poscount... 376 382 390 391 392 397
premature.. 77 96 124 126 146 166 216 231
q$......... 71 218
sp......... 8 12 13
subcount... 110 111 112 284 307 309 310 313
subs(...... 12 111 112 287 314 315
t!......... 3 401
top........ 277 278 279 282 284 285 286 289 291 292 293 296
v$(........ 6 255 261 262 264 265 355 356 367 374 375 377
varcount... 244 251 261 264 267 347 348 350 354 366 372
what....... 9 111 121 287 294 314 315 325 326
where...... 10 112 122 314 315 325 326
wipe....... 1 86 167 168 217 405
x.......... 130 131 150 151 172 173 187 188 252 253 254 256 260 409 411
x$......... 75 105 106 107 108 109 111 115 116 117 118 119 121 201 247 373
z.......... 2
z$......... 1 405 408 409 412
This particular program used no functions. It it had, the functions
would also have been referenced just after the sub-programs.
The line numbers referenced are lined up to match the longest variable
name, label, subprogram, or function name. The line numbers themselves are
formatted to allow one space between each line number for the largest line
number appearing in the program. Those two rules assure that all line
numbers and names will line up when printed. The printed lines will always
fit on a standard 80-column page.
THE END?
This isn't the end if you don't want it to be. QB4CREF can get better,
if you register and tell me what more you'd like to see. I do listen to
users; if I have none, I've just wasted my time. If I have some, and I
don't listen, soon enough I won't have any.
It's better if you write me. I'm at the office fairly often, but I'm
usually working hard and writing software. It's less of an interruption to
read the mail. Still, if it's an emergency you can call. If I'm there,
I'm always willing to talk to registered users.
I've written a lot of other programs, too. Even if you're not a
registered user, I'd be happy to send you a free catalog. Write or call:
T.N.T. Software, Inc.
Attn: Bruce W. Tonkin
34069 Hainesville Rd.
Round Lake IL 60073
(312) 223-8595
3